Presently, when a customer purchases an enterprise business application unit to support their company's business process, the customer is required to select a deployment model. Some companies prefer a single instance database deployment model, while other companies prefer a multi-database model. In the single database deployment model all divisions or pillars of data are stored within a single database, whereas with the multi-database model each pillar of data is contained in its own database.
An application unit is a granular and well defined piece of software that performs a distinct function in supporting the implementation of a business application. Such an application unit can be clearly identified in software using software meta-data which entails the use of business data which is stored in a database. Furthermore, an application product is a set of application units configured to help perform a set of business functions to support a customer's business. These application products generally correspond to licensable products which a customer may purchase (e.g., a general ledger, accounts payable, benefits, sales, etc.).
A grouping of such application products for which a customer would typically like to deploy within a single instance database to support their business needs is referred to as a pillar. Examples of pillars include human capital management, customer relationship management, etc. Further, an enterprise business application suite consists of a grouping of the above mentioned pillars. Table 1 below is an example of the hierarchy described above.
TABLE 1Enterprise Business Application Suite
While both deployment models have distinct advantages, some company's business models are more conducive to implementing either the single database model or the multi-database model but not both. Current solutions only support either the single database or the multi-database model. Thus, when selling enterprise software suites to a customer, the customer must determine which model the customer will need, and then the corresponding software is then sold to the customer. This can create a variety of problems such as, for example, the customer does not always know the model that will fit their business needs at the time of purchase, or the customer is mistaken as to which model to use and purchases the wrong model or may want to change the deployment configuration subsequent to initial deployment. Hence, there is a need for improved methods and systems in the art.